// pages/testBackpack/index.js
Page({
  data: {
    backpackList: [],
    loading: false,
    envId: '',
    currentUser: '',
    selectedGoodsType: null, // 选中的物品类别ID
    goodsTypeOptions: [
      { value: null, label: '全部物品' },
      { value: 0, label: '普通物品' },
      { value: 1, label: '饮品券' },
      { value: 2, label: '门票' },
      { value: 3, label: '充值兑换券' },
      { value: 4, label: '积分' },
      { value: 5, label: '猎杀数' },
      { value: 6, label: '背包积分' }
    ]
  },

  onLoad() {
    // 获取全局配置
    const app = getApp();
    this.setData({
      envId: app.globalData.env || '未配置',
      currentUser: app.globalData.openid ? app.globalData.openid.substring(0, 8) + '...' : '未获取'
    });
    
    // 自动获取背包物品
    this.getUserBackpack();
  },

  // 获取用户背包物品
  async getUserBackpack() {
    this.setData({ loading: true });
    
    try {
      console.log('开始获取用户背包物品');
      
      const result = await wx.cloud.callFunction({
        name: 'quickstartFunctions',
        data: {
          type: 'getUserBackpack',
          goodsType: this.data.selectedGoodsType // 传递物品类别ID
        }
      });
      
      console.log('获取用户背包物品结果:', result);
      
      if (result.result && result.result.success) {
        const backpackList = result.result.data || [];
        
        this.setData({
          backpackList: backpackList
        });
        
        wx.showToast({
          title: `获取成功，共${result.result.total}个物品`,
          icon: 'success'
        });
      } else {
        wx.showToast({
          title: result.result?.errMsg || '获取失败',
          icon: 'error'
        });
      }
    } catch (error) {
      console.error('获取用户背包物品失败:', error);
      wx.showToast({
        title: '网络错误',
        icon: 'error'
      });
    } finally {
      this.setData({ loading: false });
    }
  },

  // 复制背包物品信息到剪贴板
  copyBackpackInfo(e) {
    const { index } = e.currentTarget.dataset;
    const backpackItem = this.data.backpackList[index];
    
    const backpackInfo = JSON.stringify(backpackItem, null, 2);
    
    wx.setClipboardData({
      data: backpackInfo,
      success: () => {
        wx.showToast({
          title: '已复制到剪贴板',
          icon: 'success'
        });
      }
    });
  },

  // 选择物品类别
  onGoodsTypeChange(e) {
    const selectedGoodsType = e.detail.value === '' ? null : parseInt(e.detail.value);
    this.setData({
      selectedGoodsType: selectedGoodsType
    });
    console.log('选择的物品类别ID:', selectedGoodsType);
  },

     // 使用背包积分
   async useBackpackPoints(e) {
     const { index } = e.currentTarget.dataset;
     const backpackItem = this.data.backpackList[index];
     
     if (!backpackItem || backpackItem.goodsType !== 6) {
       wx.showToast({
         title: '只能使用背包积分',
         icon: 'error'
       });
       return;
     }
     
     try {
       console.log('开始使用背包积分:', backpackItem);
       
       const result = await wx.cloud.callFunction({
         name: 'quickstartFunctions',
         data: {
           type: 'useBackpackPoints',
           backpackId: backpackItem._id,
           quantity: backpackItem.quantity
         }
       });
       
       console.log('使用背包积分结果:', result);
       
       if (result.result && result.result.success) {
         wx.showToast({
           title: `成功使用${backpackItem.quantity}个背包积分`,
           icon: 'success'
         });
         
         // 刷新背包列表
         this.getUserBackpack();
       } else {
         wx.showToast({
           title: result.result?.errMsg || '使用失败',
           icon: 'error'
         });
       }
     } catch (error) {
       console.error('使用背包积分失败:', error);
       wx.showToast({
         title: '网络错误',
         icon: 'error'
       });
     }
   },

   // 返回首页
   goBack() {
     wx.navigateBack();
   }
 });
